www.gusucode.com > VC++ 客户管理系统(SQL Serve)-源码程序 > VC++ 客户管理系统(SQL Serve)-源码程序/code/Program/khts.cpp
// khts.cpp : implementation file // #include "stdafx.h" #include "khmanager.h" #include "khts.h" #include "ado.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif int khtsclnum=0; int khtsxiugai=0; ///////////////////////////////////////////////////////////////////////////// // khts dialog khts::khts(CWnd* pParent /*=NULL*/) : CDialog(khts::IDD, pParent) { //{{AFX_DATA_INIT(khts) //}}AFX_DATA_INIT } void khts::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(khts) DDX_Control(pDX, IDC_DATETIMEPICKER1, m_date); DDX_Control(pDX, IDC_LIST1, m_list); DDX_Control(pDX, IDC_EDIT8, m_edit8); DDX_Control(pDX, IDC_EDIT7, m_edit7); DDX_Control(pDX, IDC_EDIT6, m_edit6); DDX_Control(pDX, IDC_EDIT4, m_edit4); DDX_Control(pDX, IDC_EDIT3, m_edit3); DDX_Control(pDX, IDC_EDIT2, m_edit2); DDX_Control(pDX, IDC_EDIT1, m_edit1); DDX_Control(pDX, IDC_COMBO2, m_com2); DDX_Control(pDX, IDC_COMBO1, m_com1); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(khts, CDialog) //{{AFX_MSG_MAP(khts) ON_COMMAND(ID_ADD, OnAdd) ON_COMMAND(ID_DELETE, OnDelete) ON_COMMAND(ID_EXIT, OnExit) ON_COMMAND(ID_UPDATE, OnUpdate) ON_COMMAND(ID_SAVE, OnSave) ON_COMMAND(ID_CANCEL, OnCancel) ON_NOTIFY(NM_DBLCLK, IDC_LIST1, OnDblclkList1) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // khts message handlers BOOL khts::OnInitDialog() { CDialog::OnInitDialog(); ado load; load.Open("select * from tb_khxx",adCmdText); int rstnum=load.GetRecordCount(); int l; for(l=1;l<=rstnum;l++) { this->m_com1.AddString(load.GetFieldValue("khxx_mc")); load.Move(l); } load.Open("select * from tb_Client_khmyd",adCmdText); rstnum=load.GetRecordCount(); for(l=1;l<=rstnum;l++) { this->m_com2.AddString(load.GetFieldValue("khmyd_myd")); load.Move(l); } load.close(); imagelist.Create(32,32,ILC_COLOR32|ILC_MASK,0,0); imagelist.Add(::LoadIcon(::AfxGetResourceHandle(),MAKEINTRESOURCE(IDI_ICON1))); imagelist.Add(::LoadIcon(::AfxGetResourceHandle(),MAKEINTRESOURCE(IDI_ICON2))); imagelist.Add(::LoadIcon(::AfxGetResourceHandle(),MAKEINTRESOURCE(IDI_ICON3))); imagelist.Add(::LoadIcon(::AfxGetResourceHandle(),MAKEINTRESOURCE(IDI_ICON4))); imagelist.Add(::LoadIcon(::AfxGetResourceHandle(),MAKEINTRESOURCE(IDI_ICON5))); imagelist.Add(::LoadIcon(::AfxGetResourceHandle(),MAKEINTRESOURCE(IDI_ICON10))); CString s; TCHAR *pString; menu.LoadMenu(IDR_lxrxx); toolbar.EnableAutomation(); toolbar.Create(WS_CHILD|WS_VISIBLE,CRect(0,0,0,0),this,ID_TOOLBAR); toolbar.SetImageList(&imagelist); int i; for(i=0;i<8;i++) { button[i].dwData=0; button[i].fsState=TBSTATE_ENABLED; button[i].fsStyle=TBSTYLE_BUTTON; } button[5].fsStyle=TBSTYLE_SEP; button[0].idCommand=ID_ADD; button[0].iBitmap=0; button[1].idCommand=ID_UPDATE; button[1].iBitmap=1; button[2].idCommand=ID_DELETE; button[2].iBitmap=2; button[3].idCommand=ID_SAVE; button[3].iBitmap=3; button[4].idCommand=ID_CANCEL; button[4].iBitmap=4; button[6].idCommand=ID_EXIT; button[6].iBitmap=5; for(i=0;i<8;i++) { s.LoadString(i+IDS_21); int nStringLength= s.GetLength() + 1; pString = s.GetBufferSetLength(nStringLength); button[i].iString =toolbar.AddStrings(pString); s.ReleaseBuffer(); } toolbar.AddButtons(7,button); toolbar.AutoSize(); toolbar.SetStyle(TBSTYLE_FLAT|CCS_TOP); toolbar.EnableButton(ID_SAVE,false); toolbar.EnableButton(ID_CANCEL,false); m_list.ModifyStyle(0L,LVS_REPORT); // m_list.ModifyStyle(0L,LVS_SINGLESEL); m_list.ModifyStyle(0L,LVS_SHOWSELALWAYS); m_list.ModifyStyle(0L,LVS_NOSORTHEADER); m_list.SetExtendedStyle(LVS_EX_GRIDLINES| LVS_EX_FULLROWSELECT| LVS_EX_HEADERDRAGDROP| LVS_EX_ONECLICKACTIVATE); m_list.InsertColumn(0,"客户投诉编号"); m_list.InsertColumn(1,"企业名称"); m_list.InsertColumn(2,"投诉人"); m_list.InsertColumn(3,"投诉主题"); m_list.InsertColumn(4,"投诉内容"); m_list.InsertColumn(5,"投诉日期"); m_list.InsertColumn(6,"处理办法"); m_list.InsertColumn(7,"客户满意度"); m_list.InsertColumn(8,"投诉受理人"); m_list.InsertColumn(9,"备注信息"); m_list.SetColumnWidth(0,100); m_list.SetColumnWidth(1,100); m_list.SetColumnWidth(2,100); m_list.SetColumnWidth(3,100); m_list.SetColumnWidth(4,100); m_list.SetColumnWidth(5,100); m_list.SetColumnWidth(6,100); m_list.SetColumnWidth(7,100); m_list.SetColumnWidth(8,100); m_list.SetColumnWidth(9,100); this->loadlist(); this->enbalewin(false); //this->datatotext(); this->texttowin(); this->m_date.EnableWindow(false); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } void khts::OnAdd() { this->enbalewin(true); this->enablebutton(false); this->clearall(); this->autonum(); } void khts::OnCancel() { this->enbalewin(false); this->enablebutton(true); khtsxiugai=0; this->datatotext(); this->texttowin(); } void khts::OnDelete() { ado rst; CString ss,aa; this->m_edit1.GetWindowText(aa); if(aa.IsEmpty()) {MessageBox("不能为空"); return;} if(MessageBox("删除后数据将丢失","提示",MB_YESNO)==IDYES) { ss.Format("delete from tb_Client_khts where khts_id = '%s'",aa); rst.ExecuteSQL(ss); m_list.DeleteAllItems(); this->loadlist(); this->datatotext(); this->texttowin(); } } void khts::OnExit() { this->EndDialog(true); } void khts::OnUpdate() { CString ss,aa; this->m_edit1.GetWindowText(aa); if(aa.IsEmpty()) {MessageBox("不能为空","提示"); return;} this->enbalewin(true); this->enablebutton(false); khtsxiugai=1; } void khts::OnSave() { ado rst; this->wintotext(); CString ss; if(khtsxiugai==1) {ss.Format("UPDATE tb_Client_khts set khts_qymc='%s',khts_tsr='%s',khts_tszt='%s',khts_tsnr='%s',khts_tsrq='%s',khts_clbf='%s',khts_khmyd='%s',khts_tsslr='%s',khts_bz='%s' where khts_id='%s'",com1,edit2,edit3,edit4,date,edit6,com2,edit7,edit8,edit1);} else {ss.Format("INSERT INTO tb_Client_khts values('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')",edit1,com1,edit2,edit3,edit4,date,edit6,com2,edit7,edit8);} rst.ExecuteSQL(ss); m_list.DeleteAllItems(); this->loadlist(); this->datatotext(); this->texttowin(); this->enbalewin(false); this->enablebutton(true); khtsxiugai=0; } void khts::clearall() { this->m_edit1.SetWindowText(""); this->m_edit2.SetWindowText(""); this->m_edit3.SetWindowText(""); this->m_edit4.SetWindowText(""); this->m_edit6.SetWindowText(""); this->m_edit7.SetWindowText(""); this->m_edit8.SetWindowText(""); this->m_com1.SetWindowText(""); this->m_com2.SetWindowText(""); this->m_date.SetWindowText(""); } void khts::enablebutton(bool butn) { toolbar.EnableButton(ID_ADD,butn); toolbar.EnableButton(ID_UPDATE,butn); toolbar.EnableButton(ID_DELETE,butn); toolbar.EnableButton(ID_SAVE,!butn); toolbar.EnableButton(ID_CANCEL,!butn); } void khts::enbalewin(bool wi) { this->m_edit1.EnableWindow(wi); this->m_edit2.EnableWindow(wi); this->m_edit3.EnableWindow(wi); this->m_edit4.EnableWindow(wi); this->m_edit6.EnableWindow(wi); this->m_edit7.EnableWindow(wi); this->m_edit8.EnableWindow(wi); this->m_com1.EnableWindow(wi); this->m_com2.EnableWindow(wi); } void khts::texttowin() { this->m_edit1.SetWindowText(edit1); this->m_edit2.SetWindowText(edit2); this->m_edit3.SetWindowText(edit3); this->m_edit4.SetWindowText(edit4); this->m_edit6.SetWindowText(edit6); this->m_edit7.SetWindowText(edit7); this->m_edit8.SetWindowText(edit8); this->m_com1.SetWindowText(com1); this->m_com2.SetWindowText(com2); this->m_date.SetWindowText(date); } void khts::wintotext() { this->m_edit1.GetWindowText(edit1); this->m_edit2.GetWindowText(edit2); this->m_edit3.GetWindowText(edit3); this->m_edit4.GetWindowText(edit4); this->m_edit6.GetWindowText(edit6); this->m_edit7.GetWindowText(edit7); this->m_edit8.GetWindowText(edit8); this->m_com1.GetWindowText(com1); this->m_com2.GetWindowText(com2); this->m_date.GetWindowText(date); } void khts::datatotext() { edit1=m_list.GetItemText(khtsclnum,0); edit2=m_list.GetItemText(khtsclnum,2); edit3=m_list.GetItemText(khtsclnum,3); edit4=m_list.GetItemText(khtsclnum,4); edit6=m_list.GetItemText(khtsclnum,6); edit7=m_list.GetItemText(khtsclnum,8); edit8=m_list.GetItemText(khtsclnum,9); com1=m_list.GetItemText(khtsclnum,1); com2=m_list.GetItemText(khtsclnum,7); date=m_list.GetItemText(khtsclnum,5); } void khts::loadlist() { ado rst; rst.rstOpen("select * from tb_Client_khts"); int recordcount=rst.GetRecordCount(); int ii; for(ii=1;ii<=recordcount;ii++) { m_list.InsertItem(ii-1,""); m_list.SetItemText(ii-1,0,rst.GetFieldValue("khts_id")); m_list.SetItemText(ii-1,1,rst.GetFieldValue("khts_qymc")); m_list.SetItemText(ii-1,2,rst.GetFieldValue("khts_tsr")); m_list.SetItemText(ii-1,3,rst.GetFieldValue("khts_tszt")); m_list.SetItemText(ii-1,4,rst.GetFieldValue("khts_tsnr")); m_list.SetItemText(ii-1,5,rst.GetFieldValue("khts_tsrq")); m_list.SetItemText(ii-1,6,rst.GetFieldValue("khts_clbf")); m_list.SetItemText(ii-1,7,rst.GetFieldValue("khts_khmyd")); m_list.SetItemText(ii-1,8,rst.GetFieldValue("khts_tsslr")); m_list.SetItemText(ii-1,9,rst.GetFieldValue("khts_bz")); rst.Move(ii); } rst.close(); } void khts::autonum() { ado rst3; rst3.rstOpen("select * from tb_Client_khts"); int m=rst3.GetRecordCount(); if(m==0) { this->m_edit1.SetWindowText("TS001"); this->m_edit1.EnableWindow(false); return; } else { rst3.MoveLast(); CString mm=rst3.GetFieldValue("khts_id"); int xuhao=atoi(mm.Right(3)); xuhao+=1; mm.Format("TS%03d",xuhao); this->m_edit1.EnableWindow(false); this->m_edit1.SetWindowText(mm); rst3.close(); } } void khts::OnDblclkList1(NMHDR* pNMHDR, LRESULT* pResult) { khtsclnum=m_list.GetHotItem(); if(khtsclnum<0) {return;} this->datatotext(); this->texttowin(); this->enbalewin(false); this->enablebutton(true); *pResult = 0; } BOOL khts::PreTranslateMessage(MSG* pMsg) { // TODO: Add your specialized code here and/or call the base class if(pMsg->message==WM_KEYDOWN && pMsg->wParam==13) pMsg->wParam=9; return CDialog::PreTranslateMessage(pMsg); }